From: Matthias Clasen Date: Tue, 4 Jan 2022 12:51:56 +0000 (-0500) Subject: Make our stack noexec X-Git-Tag: archive/raspbian/4.6.5+ds-1+rpi1~1^2~61^2^2~123^2 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=46509b6dd28c58ae8dd7e2c02a82a3ccb2751e88;p=gtk4.git Make our stack noexec The change to use ld and objcopy for resources had some side-effects: it leaked a few symbols and made our stack executable. We don't want that. Use -z nonexecstack and --strip-all to avoid this. Fixes: #4598 --- diff --git a/gtk/meson.build b/gtk/meson.build index 91aefe1b17..6ce2c18320 100644 --- a/gtk/meson.build +++ b/gtk/meson.build @@ -927,6 +927,7 @@ if not meson.is_cross_build() and build_machine.system() == 'linux' and objcopy. input : gtk_gresource, output : 'gtkresources_blob.o', command : [ld, + '-z', 'noexecstack', '-r', '-b','binary', '@INPUT@', @@ -937,6 +938,7 @@ if not meson.is_cross_build() and build_machine.system() == 'linux' and objcopy. input : gtk_resources_binary, output : 'gtkresources_blob2.o', command : [objcopy, + '--strip-all', '--add-symbol','_gtk_resource_data=.data:0', '@INPUT@', '@OUTPUT@'])